package com.example.zyl.common.config;


import com.example.zyl.common.utils.context.DynamicDataSourceContextHolder;
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;

import javax.sql.DataSource;

/**
 * 动态数据源
 * 当需要使用数据源的时候，系统会自动调用该方法，
 * 获取当前数据源的标记，如 master 或者 slave 或者其他，
 * 拿到标记之后，就可以据此获取到一个数据源了。
 */
public class DynamicDataSource extends AbstractRoutingDataSource {


    @Override
    protected Object determineCurrentLookupKey() {
        return DynamicDataSourceContextHolder.getDataSourceType();
    }
}
